1. Field of the Invention
The present invention is directed to computer systems; and more particularly, it is directed to rendering of digital images.
2. Description of the Related Art
Digital images may include raster graphics, vector graphics, or a combination thereof. Raster graphics data (also referred to herein as bitmaps) may be stored and manipulated as a grid of individual picture elements called pixels. A bitmap may be characterized by its width and height in pixels and also by the number of bits per pixel. Commonly, a color bitmap defined in the RGB (red, green blue) color space may comprise between one and eight bits per pixel for each of the red, green, and blue channels. An alpha channel may be used to store additional data such as per-pixel transparency values. Vector graphics data may be stored and manipulated as one or more geometric objects built with geometric primitives. The geometric primitives (e.g., points, lines, polygons, Bézier curves, and text characters) may be based upon mathematical equations to represent parts of digital images.
Digital image processing is the process of analyzing and/or modifying digital images using a computing device, e.g., a computer system. Using specialized software programs, digital images may be manipulated and transformed in a variety of ways. For example, image rendering is the process of generating a digital image based on an image description.
Global illumination methods for rendering, such as path tracing based on Monte Carlo ray tracing, have been widely used for generating high quality images. However, such methods tend to be slow since many ray samples are required to produce high-quality rendered images. If a relatively small number of ray samples are used, the rendered images tend to show an unacceptable amount of noise. Therefore, prior approaches to such methods have carried a trade-off between speed and quality.
Adaptive sampling methods for rendering may generate a greater number of rays on important regions where global illumination methods would produce more errors (e.g., noise). Examples of adaptive sampling methods include multidimensional adaptive rendering and wavelet rendering. Such methods may identify the important regions based on a contrast metric (e.g., variance). More rays may then be allocated to these regions. In connection with these adaptive sampling methods, reconstructions may also be used as a post-processing step for generating smooth images.
Filtering methods for global illumination methods have been proposed to reduce the noise in rendered images. Examples of such filtering methods include a variant of bilateral filtering and edge-avoiding A-Trous filtering. These filtering methods have been proposed as a post-processing part of a rendering pipeline.